Skip to content

chore: pre-release maintenance (test counts, fuzz fix, code cleanup)#885

Merged
chaliy merged 4 commits intomainfrom
claude/run-maintenance-fIcsd
Mar 27, 2026
Merged

chore: pre-release maintenance (test counts, fuzz fix, code cleanup)#885
chaliy merged 4 commits intomainfrom
claude/run-maintenance-fIcsd

Conversation

@chaliy
Copy link
Copy Markdown
Contributor

@chaliy chaliy commented Mar 27, 2026

Summary

Pre-release maintenance pass per specs/012-maintenance.md.

  • fix: Prevent panic on malformed ${#[} in arithmetic expansion — found by arithmetic_fuzz CI (intermittent failures Mar 22/24/26). Adds regression test under TM-DOS-029.
  • docs: Update spec test counts (2382→2278) and security doc threat model test count (50+→185) to match reality. Added 7 new test files to per-file breakdown table.
  • chore: Clean up stale #[allow(dead_code)] annotations and redundant TODO in AWK builtin.
  • chore(specs): Add "Deferred Items" section to 012-maintenance.md to track large-scope items found during maintenance passes.

Deferred to separate issues

Maintenance checklist results

Section Status
Dependencies All current, cargo deny clean, 1 allowed advisory
Security 185 TM tests, 14 failpoint, 53 network, 39 error, 26 logging
Tests 3478 Rust tests pass, 2278 spec cases (2252 pass, 26 skip)
Documentation Test counts updated to match reality
Examples All compile and run
Specs All 19 specs accurate, no orphaned TODOs
Code quality fmt clean, clippy clean
Simplification Dead code annotations cleaned; large refactors deferred to #880/#881
Agent config AGENTS.md accurate, all paths verified
Nightly CI 7/7 green; fuzz 4/7 (arithmetic_fuzz — fixed in this PR)

Test plan

  • cargo test --all-features — all pass
  • cargo clippy --all-targets --all-features -- -D warnings — clean
  • cargo fmt --check — clean
  • New regression test arithmetic_malformed_brace_length_no_panic passes

chaliy added 4 commits March 27, 2026 23:45
Spec test cases: 2382→2278 (2354 pass→2252, 28 skip→26).
Added new test files (exec-command, compgen-path, ls, nameref-assoc,
set-allexport, subprocess-isolation, test-tty). Updated per-file counts
and skip annotations. Updated threat_model_tests count from 50+ to 185.
Remove misleading #[allow(dead_code)] from AwkExpr enum (variants are
used). Keep it only on Match which is genuinely unconstructed. Convert
redundant TODO comment to descriptive comment since the error message
already communicates the limitation.
Fuzz input `[${#[` (bytes [91,36,123,35,91]) triggered a panic in
expand_brace_expr_in_arithmetic: when rest="[" and bracket=0,
the slice rest[1..0] panicked with "byte range starts at 1 but ends
at 0". Guard against bracket+1 > end before slicing.

Crash found by arithmetic_fuzz in CI (Mar 22, 24, 26 failures).
Adds regression test under TM-DOS-029.
Document that maintenance passes should create GitHub issues for
large-scope items rather than silently skipping them. Record
deferred items from the 2026-03-27 run (#880, #881).
@chaliy chaliy force-pushed the claude/run-maintenance-fIcsd branch from d7f6f36 to f6e2da0 Compare March 27, 2026 23:45
@chaliy chaliy merged commit 059eb85 into main Mar 27, 2026
23 checks passed
@chaliy chaliy deleted the claude/run-maintenance-fIcsd branch March 27, 2026 23:54
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant